package com.erp.erp_entitys.money.entity;

import com.erp.annotation.PropertyMsg;

import java.math.BigDecimal;
import java.util.Date;
import java.io.Serializable;

/**
 * 资金管理-付款表(Payment)实体类
 *
 * @author lst
 * @since 2020-12-28 15:56:34
 */
public class PaymentEntity implements Serializable {
    private static final long serialVersionUID = 362235987913563181L;
    /**
    * 主键id
    */
    private Integer id;
    /**
    * 付款单号
    */
    @PropertyMsg("付款单号")
    private String billNo;
    /**
    * 应付时间
    */
    @PropertyMsg("应付时间")
    private Date time;
    /**
    * 供应商名称
    */
    @PropertyMsg("供应商名称")
    private String supplierName;
    /**
    * 供应商编码
    */
    private String supplierCode;
    /**
    * 收款银行名称
    */
    @PropertyMsg("收款银行名称")
    private String bankName;
    /**
    * 收款银行账号
    */
    @PropertyMsg("收款银行账号")
    private String bankAccount;
    /**
    * 币种
    */
    @PropertyMsg("币种")
    private String currency;
    /**
    * 币种编码
    */
    private String currencyCode;
    /**
    * 人名币汇率
    */
    @PropertyMsg("人名币汇率")
    private BigDecimal rmbRate;
    /**
    * 美金汇率
    */
    @PropertyMsg("美金汇率")
    private BigDecimal usdRate;
    /**
    * 付款金额
    */
    @PropertyMsg("付款金额")
    private BigDecimal amount;
    /**
    * 制单公司名称
    */
    @PropertyMsg("制单公司名称")
    private String companyName;
    /**
    * 制单公司编码
    */
    private String companyCode;
    /**
    * 操作员
    */
    @PropertyMsg("操作员")
    private String operation;
    /**
    * 操作员编码
    */
    private String operationNo;
    /**
    * 备注
    */
    @PropertyMsg("备注")
    private String memo;
    /**
     * 标记颜色
     */
    private String markColor;
    /**
    * 创建时间
    */
    private Date createDate;
    /**
    * 修改时间
    */
    private Date modifyTime;
    /**
     * 付款类型(1:登记预付款 2:登记货款)
     */
    private Integer type;
    /**
    * 状态(1.草稿箱 2.待批箱 3.已批箱 4.完成箱 5.垃圾箱)
    */
    private Integer status;
    /**
    * 是否有效(0:无效 1:有效)
    */
    private Integer valid;


    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public String getMarkColor() {
        return markColor;
    }

    public void setMarkColor(String markColor) {
        this.markColor = markColor;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getBillNo() {
        return billNo;
    }

    public void setBillNo(String billNo) {
        this.billNo = billNo;
    }

    public Date getTime() {
        return time;
    }

    public void setTime(Date time) {
        this.time = time;
    }

    public String getSupplierName() {
        return supplierName;
    }

    public void setSupplierName(String supplierName) {
        this.supplierName = supplierName;
    }

    public String getSupplierCode() {
        return supplierCode;
    }

    public void setSupplierCode(String supplierCode) {
        this.supplierCode = supplierCode;
    }

    public String getBankName() {
        return bankName;
    }

    public void setBankName(String bankName) {
        this.bankName = bankName;
    }

    public String getBankAccount() {
        return bankAccount;
    }

    public void setBankAccount(String bankAccount) {
        this.bankAccount = bankAccount;
    }

    public String getCurrency() {
        return currency;
    }

    public void setCurrency(String currency) {
        this.currency = currency;
    }

    public String getCurrencyCode() {
        return currencyCode;
    }

    public void setCurrencyCode(String currencyCode) {
        this.currencyCode = currencyCode;
    }

    public BigDecimal getRmbRate() {
        return rmbRate;
    }

    public void setRmbRate(BigDecimal rmbRate) {
        this.rmbRate = rmbRate;
    }

    public BigDecimal getUsdRate() {
        return usdRate;
    }

    public void setUsdRate(BigDecimal usdRate) {
        this.usdRate = usdRate;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    public String getCompanyCode() {
        return companyCode;
    }

    public void setCompanyCode(String companyCode) {
        this.companyCode = companyCode;
    }

    public String getOperation() {
        return operation;
    }

    public void setOperation(String operation) {
        this.operation = operation;
    }

    public String getOperationNo() {
        return operationNo;
    }

    public void setOperationNo(String operationNo) {
        this.operationNo = operationNo;
    }

    public String getMemo() {
        return memo;
    }

    public void setMemo(String memo) {
        this.memo = memo;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public Date getModifyTime() {
        return modifyTime;
    }

    public void setModifyTime(Date modifyTime) {
        this.modifyTime = modifyTime;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getValid() {
        return valid;
    }

    public void setValid(Integer valid) {
        this.valid = valid;
    }


    /**
     * 重写toString
     */
    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("PaymentEntity").append('[')
                .append("id=")
                .append(id)
                .append(",billNo=")
                .append(billNo)
                .append(",time=")
                .append(time)
                .append(",supplierName=")
                .append(supplierName)
                .append(",supplierCode=")
                .append(supplierCode)
                .append(",bankName=")
                .append(bankName)
                .append(",bankAccount=")
                .append(bankAccount)
                .append(",currency=")
                .append(currency)
                .append(",currencyCode=")
                .append(currencyCode)
                .append(",rmbRate=")
                .append(rmbRate)
                .append(",usdRate=")
                .append(usdRate)
                .append(",amount=")
                .append(amount)
                .append(",companyName=")
                .append(companyName)
                .append(",companyCode=")
                .append(companyCode)
                .append(",operation=")
                .append(operation)
                .append(",operationNo=")
                .append(operationNo)
                .append(",memo=")
                .append(memo)
                .append(",createDate=")
                .append(createDate)
                .append(",modifyTime=")
                .append(modifyTime)
                .append(",status=")
                .append(status)
                .append(",valid=")
                .append(valid)
                .append(']');
        return sb.toString();
    }
}